perm filename TIPUG.GFF[UP,DOC] blob sn#231506 filedate 1976-08-17 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00070 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00003 00002	
C00004 00003
C00005 00004
C00006 00005
C00009 00006
C00013 00007
C00017 00008
C00021 00009
C00023 00010
C00025 00011
C00029 00012
C00031 00013
C00034 00014
C00035 00015
C00039 00016
C00042 00017
C00046 00018
C00049 00019
C00053 00020
C00056 00021
C00059 00022
C00064 00023
C00065 00024
C00066 00025
C00069 00026
C00073 00027
C00078 00028
C00079 00029
C00082 00030
C00084 00031
C00087 00032
C00089 00033
C00091 00034
C00094 00035
C00096 00036
C00099 00037
C00103 00038
C00107 00039
C00109 00040
C00113 00041
C00116 00042
C00119 00043
C00122 00044
C00125 00045
C00127 00046
C00132 00047
C00137 00048
C00140 00049
C00144 00050
C00147 00051
C00151 00052
C00155 00053
C00158 00054
C00161 00055
C00164 00056
C00169 00057
C00174 00058
C00178 00059
C00182 00060
C00186 00061
C00188 00062
C00191 00063
C00194 00064
C00197 00065
C00198 00066
C00201 00067
C00204 00068
C00209 00069
C00213 00070	
C00214 ENDMK
C⊗;





Report No. 2183                           Bolt Beranek and Newman Inc.

NIC No. 10916
















              USER'S GUIDE TO THE TERMINAL IMP


                    March 1976 Revision






















Sponsored by:

Defense Communications Agency
Contract No. DCA200-C-616

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


UPDATE HISTORY

Originally written Dec. 1971 by W.R. Crowther
Updated July 1972 by D.C. Walden
Completely revised Sept. 1972 by D.C. Walden
Updated Oct. 1972 by D.C. Walden
Updated Jan. 1973 by D.C. Walden
Completely revised June 1973 by D.C. Walden
Updated Nov. 1973 by J. Malman
Updated June 1974 by J. Malman
Updated Dec. 1974 by J. Malman
Completely revised August 1975 by J. Malman
Updated March 1976 by J. Malman

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


                     TABLE OF CONTENTS


1.   INTRODUCTION

2.   THE NETWORK VIRTUAL TERMINAL

3.   THE TIP COMMAND FORMAT

4.   TYPICAL USE OF THE TIP

     A.   Hardware Stage
     B.   Establishing Parameters
     C.   Connection to Remote Sites
     D.   Use of Remote Sites
     E.   Connection Loss and Restoration
     F.   TIP News and User Feedback

5.   UNUSUAL USES OF THE TIP

     A.   Device Parameters
     B.   Talking to Another TIP
     C.   Binary Mode
     D.   Setting Another Terminal's Parameters
     E.   The DIVERT OUTPUT Command
     F.   Editing
     G.   Wild
     H.   Low Level Protocol Commands
     I.   Commands from the Network
     J.   The RESET Device Command
     K.   TIP Configuration and Device Pre-initialization

6.   MAPPING THE VARIOUS DEVICES INTO THE NETWORK
     VIRTUAL TERMINAL

     A.   TTY and TTY-like Devices
     B.   2741 and 2741-like Devices
     C.   ASCII/2741 Conversion Table

7.   TIP MESSAGES TO THE TERMINAL USER

8.   THE TIP MAGNETIC TAPE OPTION

9.   CONNECTION OF TERMINALS TO THE TIP

     APPENDICES

     A.   Host Addresses
     B.   Command Summary
     C.   Bibliography
     D.   Terminals Used with the TIP
     E.   New Telnet Protocol Implementation

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


1.    INTRODUCTION

     This report describes the  use  of  a  terminal  connected  to  a
Terminal  IMP  (TIP) in the ARPA Network.  The report assumes that the
user knows how to operate  a  server  Host  system  somewhere  on  the
network  once  he  becomes  connected  to  that system, and the report
defines the procedures and options the user has available to establish
that connection.

     The ARPA  Network,  IMPs  and  TIPs,  hardware  maintenance,  TIP
operation,  and  formats  and  protocols  are not described here.  The
bibliography (Appendix C) lists the relevant documents.

     At the time of  this  writing  we  at  Bolt  Beranek  and  Newman
Inc. (BBN)  have  operated  the  TIP  extensively  with  the following
terminal types:

      KSR-33 Teletype
      KSR-37 Teletype 
      IBM-2741 (Correspondence)*
      IBM-2741 (P.T.T.C.)*
      DATA 100 (at 110, 150, 300, 600, and 1200 bps)
      EXECUPORT (at 110, 150, and 300 bps)
      INFOTON VISTAR I (at 110, 150, 300, 600, 1200,
           1800, 2400, and 9600 bps)
      IMLAC PDS-1 (at 1800, 9600 bps, and synchronous)
      ODEC 132 LINE PRINTER
      TELETYPE INKTRONICS (Line printer)
      TI 733
      DATA PRODUCTS LINE PRINTER MODEL 2410 or 2411

     Where possible, all these devices have been operated with  direct
connections to the TIP and also over a 103A dial-up modem.

     We have also briefly operated the TIP or heard of the  TIP  being
operated with a variety of other types of terminals.  These are listed
in Appendix D.  For your own safety, before you purchase any  terminal
listed  in  Appendix D or any other terminal for use with the TIP, you
should check with BBN and try it with a TIP.

     One TIP is configured with a magnetic tape drive which is used as
discussed in Section 8.

     It  should  be  noted  that  the  TIP  is  designed  to   support
interactive,  asynchronous  terminals.   It  cannot  normally  support
synchronous  devices,  or   devices   whose   input   (to   the   TIP)
characteristics are significantly different from a human typist.  Thus
the connection of computers,  paper  tape  readers,  polled  circuits,
buffered  terminals,  and so on to TIP ports is likely to be difficult
or impossible.
--------------- 
*For a 2741 to operate with the TIP, the 2741 must have  the  transmit
interrupt option and receive interrupt option.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


2.    THE NETWORK VIRTUAL TERMINAL

     A key concept in the use of the network  is  the  notion  of  the
virtual  terminal.   Instead  of  asking each Host system to cope with
every terminal type at every other Host in the  network,  we  ask  the
Host  to  cope  with  a single (imaginary) terminal called the Network
Virtual Terminal.  Your TIP will translate the data you type  to  make
it  look like virtual terminal code, and translate the remote system's
response back into your terminal's code.  While we will often  pretend
that  this  translation does not exist, it is, in fact, always present
and of crucial importance to the user.

     It is probable that the manual describing the use of  the  remote
system  is  written  in  terms of a user at the virtual terminal, most
likely as a system description based on local terminals plus an add-on
piece  telling  how  to  use the virtual terminal as a local terminal.
Virtual terminal code may include symbols which do not exist  on  your
own  keyboard.   Combinations of your available characters are used in
such cases.  You  may  even  find  that  the  translation  makes  your
terminal  different  from  a local terminal of the same make.  We have
tried to minimize this problem.

     The Network  Virtual  Terminal  has  128  keys,  often  in  upper
case/lower  case  pairs.  These keys correspond to the full ASCII set.
In addition, there are a few control keys, like the "BREAK" key.   The
terminal  is  capable of full and half duplex operation, under control
of a user-oriented switch.  The meaning of the control  keys  and  the
way  to  enter the full 128 keys from each of the terminal types which
the TIP supports is described in Section 6 of this report.

     The user talks to the TIP after  the  code  conversion  has  been
made;  that  is,  the  TIP  expects  virtual terminal characters.  The
descriptions below are in terms of virtual terminal codes.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


3.    THE TIP COMMAND FORMAT

     The user at a terminal will at various times be talking  directly
to  his  TIP instead of to the remote Host.  A typical message of this
sort might look like:

                         @ OPEN 15

Such a command always starts with symbol @  and  ends  with  either  a
linefeed* or a rubout, depending on whether the user is satisfied with
the command or wishes to abort it.  The only exception to this rule is
the specific command

                             @@

which inserts an @ in the data stream to the Host.  Commands may occur
anywhere,  and need not start on a new line.  Upper and lower case may
be freely intermixed in the command.

     Between the @ and the linefeed there will  typically  be  one  or
more  words  to  identify  the  command,  perhaps followed by a single
parameter.  The TIP is not very sophisticated,  and  thinks  the  only
important  thing  about  a word is its first letter.  This permits the
user to abbreviate a bit;  the  more  usual  rendering  of  the  first
example might be:

                           @O 15

     Once the user has started typing the parameter of a  command  the
old  value  of  the  command  will  have been destroyed, and cannot be
recovered by aborting the command.

     Almost without exception the effect of a TIP command is to set  a
parameter  or  mode for the terminal.  Even apparently direct commands
like

                         @ OPEN 15

(which initiates an elaborate exchange  of  messages  resulting  in  a
connection  to  the  remote  Host  system) actually set a mode flag to
request the appropriate action when the TIP is free to  undertake  it.
To  understand  the  TIP behavior is really to understand the complete
set of parameters and the commands  to  change  them.   Normally,  any
parameter  can  be  changed  at  any time by the user at his terminal.
Exceptions occur when the user tries to change  connection  parameters

--------------
*On 2741 terminals the return key transmits carriage-return/  linefeed
to  the  TIP and ASCII terminals are normally operated in a mode where
typing a carriage-return is interpreted  as  carriage-return/linefeed;
both  can  be used to terminate TIP commands in addition to a linefeed
alone.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


on an open connection.  An @OPEN 13 executed while talking to Host  15
would  generate  the  error message "Can't" (the connection to Host 15
must be closed before a connection can be opened to Host 13).

     Commands often consist of several command words; for example,

                    @ DEVICE CODE ASCII

Such commands may be abbreviated; for example

                          @ D C A

The spaces are required: @ DCA is not  a  legal  command.   Upper  and
lower case letters may be freely intermixed.

     An unusual variation in command  format  is  to  place  a  number
between  the  @  and the first word of the command.  In this case, the
command is not meant for the terminal  typing  but  for  the  terminal
attached to the port of that number on the same TIP as the user.  This
feature is described in some detail in the section on unusual uses  of
the TIP, section 5.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


4.    TYPICAL USE OF THE TIP

     In the normal course of things, a user will go through four  more
or  less  distinct  stages  in typing into the net.  First, he will be
concerned  with  hardware-power,  dialing  in,  etc.   Then  he   will
establish  a  dialogue  with  the  TIP  to  get  a  comfortable set of
parameters for this usage.  Next, he will instruct the TIP to  open  a
connection  to  a  remote Host; and finally, he will mostly ignore the
TIP as he talks to the  remote  Host.   The  following  sections  will
describe these stages in more detail.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


A.    Hardware Stage

     The hardware stage is primarily described  in  Section  9.   This
section  describes  only  the  final  step of this stage, when the TIP
detects a terminal on one of its previously idle lines.  At that point
the TIP normally goes into a "hunt" mode.  In this mode it expects the
very first character it sees to describe the  terminal,  according  to
the following scheme

        ASCII Terminals at 110, 150, or 300 baud type E.  (Note
        that this must be upper case.)

        2741 Correspondence Terminals type j, 4, o, or l depending
         on the element used with the terminal -- see Table 4-A. 

        2741 PTTC Terminals type:

             6 for model* 938, 939, 961, 962, or 997
             o for model 942 or 943
             w for model 947 or 948
             f for model 963, 996, or 998

        ASCII Terminals transmitting at 110 but receiving at
        1200 baud type D.  (Again, upper case)

     The TIP will deduce  terminal  rate,  character  size,  and  code
conversion  based  on  the  character  typed.   When the TIP makes its
decision it types out  TIP's  name  in  the  terminal's  own  language
followed  by  the  version  number  of the TIP software system and the
octal port number.  Then it is ready to go.  If no TIP  name  appears,
or  if  garbage appears, hang up your data set and redial.  For direct
connections Power Off is usually equivalent to hanging up.

     Some terminals need special delays at the end of their  lines  in
order  not  to  lose  characters  when running at high speed.  The TIP
currently knows how to do this timing for the ODEC  line  printer  and
several other devices.  The two commands

                    @ DEVICE CODE EXTRA-PADDING
                    @ DEVICE CODE OTHER-PADDING

will instruct the TIP to insert these delays.  One device we know  of,
a  Model 37 Teletype, requires a special parity computation to be able
to print correctly.  The command

                    @ DEVICE CODE 37




--------------
*The model name and number is stamped on the top of the  element.   If
you can't find it, trial and error works.  Try "f" first.  

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


instructs the TIP to insert the proper parity; when not in  this  mode
the TIP sets the parity bit to zero for all output characters.  Echoed
characters are echoed without parity calculation.  These commands  are
discussed more fully in section 5.

     On  all  terminals  which  hunt  to   300   baud,   Device   Code
Extra-padding  (@  D  C  E)  automatically  will be in effect.  On all
terminals  which  hunt  to  150  baud,  Device  Code  37  (@  D  C  3)
automatically  will  be in effect.  These effects can be canceled with
the command @DEVICE CODE ASCII (@ D C A).

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


                         TABLE 4-A

Hunt Character to be used for IBM 2741 Correspondence
Type Elements


NUMBER    NAME                  HUNT CHARACTER
001       Scribe                4
005       Letter Gothic         4
006       Manifold 72           j
007       Elite 72 *            4
008       Pica 72 *             4
010       Manifold 72           j
012       Prestige Elite *      4
014       Light Italic          j
015       Courier 72 *          4
019       Manifold 72           j
020       Dual Gothic           4
021       Dual Gothic           o
025       Scribe                o
026       Elite 72 *            o
027       Pica 72 *             o
028       Manifold 72           o
029       Courier 72 *          o
030       Adjutant              4
031       Adjutant              o
032       Light Italic          o
033       Prestige Elite *      o
034       Script                o
035       Delegate              o
036       Advocate              o
039       Letter Gothic         o
043       ASCII                 l
050       Advocate              4
053       Artisan 12-72         4
055       Artisan 12-72         o
059       Orator                j
060       Orator                o
067       Courier 12            4
068       Courier 12            o
070       Delegate              4
085       Courier 72            4
086       Courier 12 Italic     o
090       Script                j
123       Prestige Pica         o
129       Adjutant              o
130       Advocate              o
131       Artisan 12-72         o
132       Courier               o
133       Courier 12 Italic     o


* These type elements can be customized for you. Contact your
local IBM office for information.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


134       Courier 72            o
135       Delegate              o
136       Dual Gothic           o
137       Elite 72              o
138       Letter Gothic         o
139       Light Italic          o
140       Manifold 72           o
141       Orator                o
142       Pica 72               o
143       Prestige Elite 72     o
144       Scribe                o
145       Script                o
154       ASCII                 l
158       Bookface Academic 72  o
161       Large Elite 72        o

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


B.    Establishing Parameters


     In stage two, the user is concerned with initializing parameters.
The  naive  user  should  skip  stage two and accept the TIP's default
parameters until an obvious problem arises.  The  following  questions
are answered in stage two.


     1.  When shall the TIP send off messages to the remote Host? Here
there  are  several  options.   (The TIP is inialized to send on every
character, which is simple but inefficient.)

                      @ TRANSMIT NOW
                      @ TRANSMIT ON MESSAGE-END
                      @ TRANSMIT ON LINEFEED
                      @ TRANSMIT EVERY  



     TRANSMIT NOW causes the message currently being accumulated to be
sent as soon as possible.  TRANSMIT ON MESSAGE-END causes a message to
be sent as  soon  as  possible  after  an  ASCII  DC3  (control-S)  is
encountered.  TRANSMIT ON LINEFEED causes a message to be sent as soon
as possible after  a  linefeed  is  encountered.   Additionally,  both
TRANSMIT  ON  MESSAGE-END and TRANSMIT ON LINEFEED cause characters to
be accumulated  in  the  message  buffer  until  it  is  almost  full.
TRANSMIT  EVERY     causes a message to be sent as near as possible to
every  th character.  The command TRANSMIT EVERY 0 will reset the  TIP
to  its initial state, transmitting every character.  If the parameter
to TRANSMIT EVERY # is a large number (e.g., 250) the TIP will save up
as  many  characters  as it can before sending a message, but does not
offer any guarantee that the total number specified can be buffered.



     2.  Who shall echo  and  when?  Echoing  is  a  complex  problem,
without  any neat solution.  We have chosen to give the user the means
to tell the TIP how he or she wants it done, since it is hard to guess
correctly  in  advance.   Basically, echoing can occur at the terminal
hardware, in the TIP, or in the remote Host.   The  corresponding  TIP
commands are:

       @ ECHO HALFDUPLEX     (Echo at the terminal)

       @ ECHO LOCAL
  or   @ ECHO ALL            (Echo at the TIP)

       @ ECHO REMOTE
  or   @ ECHO NONE           (Echo at the remote Host)


Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


     Each of these commands sets the internal state of the TIP to  the
correct  mode, and in addition sends the appropriate TELNET command to
the Host if the connection is open when the  command  is  given.   The
commands  ECHO  ALL  and  ECHO NONE are now exactly equivalent to ECHO
LOCAL and ECHO REMOTE; they have been  left  temporarily  while  users
become accustomed to the new usage.

     In the ECHO REMOTE mode, although characters for the remote  Host
are  not  echoed,  the  TIP  will  echo  commands.   Network  protocol
specifies that echoing shall start out in the @ ECHO LOCAL or  @  ECHO
HALF modes.  The TIP will try to guess from the terminal type which of
the two is appropriate.  The goal of the echoing strategy is to  avoid
the  unreadable  alternatives  of  the  blank page and the doubling of
every character.  The naive  user  is  advised  to  accept  the  TIP's
default  parameters  until trouble of this sort arises.  A 2741 cannot
change echo mode and is always halfduplex.

     Because both the TIP and the remote Host need to agree on who  is
to  echo  the  characters,  the  TELNET  protocol provides a mechanism
whereby the remote terminal user may instruct the serving Host to  set
a particular mode and viceversa, the remote Host may instruct the TIP.
As noted above, this happens automatically when the command  is  given
by  the user while the connection is open.  But the Host too may issue
such commands to the TIP, and the  TIP  is  not  able  to  refuse  the
request   (even  for  2741  terminals).   If  the  connection  becomes
established in an undesirable mode, the user may change this by one of
the echo commands above.

     The  NEW  TELNET  protocol  handles   this   mechanism   somewhat
differently, as described in Appendix E.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


C.    Connection to Remote Sites

     In stage  three,  the  user  is  concerned  with  establishing  a
connection to a remote site.

                         @ OPEN 15

This amounts to "set the Host number parameter" and "add the  user  to
the  queue  of  users  waiting  for  the  TIP's connection mechanism".
Appendix A lists the Host numbers of all the sites  currently  in  the
network.

     Connecting to a Host requires establishing a bi-directional link,
so  that  the terminal can send characters to the Host and vice versa.
The request to connect to a Host is thus really a request to establish
both transmit and receive sections.

     When the user reaches the head of the queue waiting for the TIP's
"connection" mechanism, the TIP will type "Trying...".

     Following the message "Trying", the user will receive some of the
following messages:

        Open           success*
        Net Trouble    remote site cannot be reached
        Refused        remote site up but refusing
        Host Scheduled Down Until Sat. at 1850 GMT
                       Host will be back up at time and date
                       indicated
        Host Unscheduled Down Until Sat. at 1850 GMT
                       Host will back up at time and date
                       indicated
        Host not responding
                       Remote site not up, unknown when up
                       service will resume
        ICP Interfered With
                       The Host has not performed the ICP
                       correctly and the TIP has refused
                       to open a connection.

     The connection mechanism will  run  continuously  until  a  state
described  above occurs.  This can be annoying when the remote site is
obviously not going to respond.  The command

                          @ CLOSE

---------------
*"Open" indicates both halves  of  the  TELNET  connection  have  been
opened  simultaneously.   Sometimes  "Open R" followed by "Open T" (or
vice versa) will be printed; this too indicates  both  halves  of  the
connection have been opened, but not simultaneously.  If only "Open R"
or "Open T" is printed, then the server Host has failed  to  open  one
half of the TELNET connection.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


will abort the current connection attempt.  The user is then  free  to
reattempt to open the connection or to attempt to open a connection to
some other Host.

     The TIP's connection mechanism has caused  users  some  problems.
Perhaps a discussion of what the connection mechanism is doing and how
it works will alleviate some of the grief.

     First of all, users attempting to connect to different Hosts will
never   interfere  with  each  other,  although  users  simultaneously
attempting to connect to the same Host will be serviced serially.

     For the user, opening proceeds in three phases.   In  the  first,
the user is queued up waiting to "get" the TIP's connection mechanism.
In the second, the user has gotten the TIP's connection mechanism  and
is  beginning  the  connection  sequence.   In the third, the user has
completed the connection sequence and is waiting for the Host to  open
up  the  actual  data connections.  Many of the problems stem from the
fact that only one user may be proceeding through phase 2 at  a  given
time  to  a given Host.  Hence the the TIP types out "Trying" when you
get off the queue and the connection mechanism begins trying  to  open
your  connections.  Thus the "Trying" message signifies the transition
from phase 1 to phase 2.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


D.    Use of Remote Sites

     In stage four, the user is normally talking to the  Host  without
concern for the TIP.  All the TIP commands are still available.

     One command that will eventually be of interest here is

                          @ CLOSE

This command starts  the  shut-down  procedure.   The  TIP  will  echo
"Closed"*  when the process is finished.  The TIP does not know how to
log you out of the remote Host.  You  must  do  this  yourself  before
closing the connection.

     The virtual terminal  has  a  key  labeled  "BREAK".   Some  real
terminals  have  a  break  key,  and  some  Host systems expect to see
breaks.  Those terminals with a break key (but not the 2741 ATTN  key)
may simply use it.  Others must type the command

                        @ SEND BREAK

The interpretation of the break is entirely up to the  receiving  Host
-- many Hosts ignore it.

     The virtual terminal also has a  key  labeled  "SYNC".   No  real
terminals  have such a key, and the function is unique to network use.
The "SYNC" key is a clue to the remote Host that there is an important
message  which  seems  to be buffered in an "inaccessible" place.  The
TIP and the Host go to some trouble to get the SYNC indication over  a
different  channel  which  bypasses  the normal buffering conventions.
The command to send a SYNC is

                        @ SEND SYNC

Typical usage of these commands might be @ S B followed by @ S S.

     As stated earlier, the TIP nominally treats  a  carriage-  return
typed by a user as a carriage-return/linefeed.  The user may cause the
TIP to treat carriage-return as only carriage-return by executing  the
command

                    @CLEAR INSERT LINEFEED


-----------------
*"Closed" indicates that the server Host agreed to close  both  halves
of  the  TELNET  connection  simultaneously.   If  the  halves  of the
connection are closed  one  after  another,  "Closed  R"  followed  by
"Closed T" (or vice versa) will be printed.  If only one of "Closed T"
or "Closed R" is printed, wait a minute and the  TIP  will  force  the
other half of the connection to be closed.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


To return to the nominal mode of carriage-return/linefeed, the command

                    @INSERT LINEFEED

should be executed.

     If at any given time the user  types  characters  faster  than  a
server  Host  will take them from the TIP, the TIP discards characters
it can not buffer and echos them with an ASCII BEL  (on  a  2741,  the
type element is wiggled).

     The user may sometimes  use  a  server  Host  with  which  it  is
desirable  not  to  have  @ be a TIP reserved character.  The user can
change the character which introduces TIP commands using the command

                    @INTERCEPT #

By typing @INTERCEPT followed by  a  decimal  number  representing  an
ASCII  character,  the  user changes the TIP command character for his
device  to  the  ASCII  character  represented  by  the  number.   The
INTERCEPT ESC command resets the TIP command character to at-sign (@).
Thus,

                    @INTERCEPT 42
                    *INTERCEPT ESC

changes the TIP command character to asterisk (*) and back to  at-sign
(@)  assuming  the device was in the nominal mode (@) before the first
command was executed.

     If the user attempts to change the intercept character but  fails
to  type  a valid decimal number (or a character string beginning with
E) the TIP will type the diagnostic "Num" and will set  the  intercept
character to at-sign.  

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


E.    Connection Loss and Restoration


     Starting with TENEX Hosts*  running  Software  Version  1.32,  if
TENEX halts, the TIP will notify users connected to it of this fact by
typing "Connection Suspended".  At this point the users are free to do
one  of two things.  First, they can wait till TENEX restores service,
in which case the TIP will type out "Connection Restored" (or if after
the the service interruption the connection could not be restored, the
TIP will type out "Host broke the  connection").   Alternatively,  the
user is free to open a connection to any other Host, in which case the
TIP will invisibly close the TENEX connection.  It is  also  important
to point out that if a user just leaves his terminal unattended across
a TENEX service outage without releasing the connection  (any  network
related  command  such  as  @H,  @O,  @N, @C will do the job) his job,
directory, etc., are left at the mercy of  anyone  who  acquires  that
terminal.

































-------------------
Other Hosts may also implement the mechanisms which will allow
the suspension and restoration of connections.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


F.    TIP News and User Feedback

     There is frequently information which the  group  developing  and
debugging the TIP system wishes to convey to TIP users.  For instance,
when a bug is detected, we may wish to warn users not to use a certain
feature  until the bug is fixed.  When a minor improvement is made, we
may wish to notify users.  Further, there is frequently news about the
state of the network or the state of a particular Host which should be
conveyed to TIP users.  Finally, TIP users  may  wish  to  communicate
with  the  TIP  development  staff or the Network Control Center staff
about problems or suggested improvements for the TIP or  the  network.
Consequently,  we  have  constructed  a  mechanism  which we hope will
provide for communication in all the above directions.  This mechanism
is the Network Virtual TIP Executive.* To activate this mechanism, the
TIP user may give the TIP command @N.  This command causes the TIP  to
perform  the  necessary  protocol  to make a connection to the Network
Virtual TIP Executive which resides on several of  the  network  TENEX
systems.   Once  the Network Virtual TIP Executive has been activated,
we think  its  operation  is  self-explanatory.   Presently  available
features  within  the Network Virtual TIP Executive are a Network News
feature, a Host Status feature, and a  "Gripe"  feature.   The  latter
provides  users  with  a  mechanism  for  sending  messages to the TIP
development or NCC staffs.   We  recommend  that  TIP  users  get  the
network news at the beginning of every TIP session.

     The TIP will normally prompt the user  to  consider  reading  the
news by typing the message:

     Latest net news DATE
     Use "@N<cr>" followed by "netnews<cr>"

at some point(s) during the user's session.  The point  chosen  is  at
the  time of terminal recognition for "hunting" terminals (see Section
4.A), or at  each  time  a  connection  is  closed  for  "non-hunting"
terminals (see Section 5.A).

     When a user issues an @N command, the TIP requests  support  from
all  cooperating  servers.   Thus,  the user should be able to reach a
←←←
news facility, somewhere, almost all of the  time.   However,  in  the
event  that  no  cooperating server is available the TIP will time out
the @N command in about thirty seconds.  An @C command will  abort  an
@N immediately.

     Of course, TIP users with an  immediate  need  for  communication
with  the NCC or TIP development staffs should telephone (collect) the
Network Control Center (617-661-0100).  Users with  general  questions
----------------
*A version of the Resource Sharing Executive being  developed  by  the
BBN TENEX Group.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


about network usage (How do I find out if Host X is ever going  to  be
up  again?  What's  happening with a Host/Host protocol for graphics?)
may also call the NCC.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


5.    UNUSUAL USES OF THE TIP

     The "usual" use of a TIP is to connect one of the terminals which
the  TIP  supports  to  a  remote  Host.   We  have tried to make this
operation as easy and natural as possible  for  the  user.   "Unusual"
uses of the TIP are such things as connecting a non-standard terminal,
talking terminal-to-terminal, or using unusual protocols.   Such  uses
are  possible, but within the constraints of the TIP's size it has not
always been feasible to make them easy.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


A.    Device Parameters

     The TIP uses a Hunt algorithm to determine device parameters.  On
standard  low  speed terminals it works well and easily.  If something
more complicated is desired, like establishing a rate  over  300  bps,
the user must set these parameters himself.

     The  @DEVICE  RATE  command  does  not   affect   the   hunt-bit.
Therefore, the only way to change a port to, or from, being hunting is
to have the TIP site liaison call the NCC and have it done.

     The TIP stores device parameters  in  a  10-bit  field  as  shown
below:



                   bits
          -.-.-.-.-.-.-.-.-.-.-
          !   4   ! 2 !   4   !
          -.-.-.-.-.-.-.-.-.-.-
              !     !     !
              !     !     ---Input rate
              !     !
              !     ---Character size
              !
              ---Output rate



where character size is 5 less than the number of bits  per  character
and  the 16 rates are zero, 75, 110, 134.5, 150, 300, 600, 1200, 1800,
2400, 4800, 9600, 19200, unused,  unused,  and  external  clock.   The
4800, 9600 and 19.2K rates are available only for output.

     The user can change device parameters with the command

                      @ DEVICE RATE #

where # is the decimal equivalent of the 10-bit field the user  wishes
to  establish.   The  command  will  often  be  executed  from another
terminal (see Section 5-D below).

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


     Some examples follow:

          @D R    bps
          178     110     ASCII in and out
          308     150
          373     300
          438     600
          503     1200
          568     1800
          633     2400
          754     110 in 9600 out

          243     134.5   2741 in and out 

The user can set device code conversion with the commands

                    @ DEVICE CODE ASCII
                    @ DEVICE CODE EXTRA-PADDING
                    @ DEVICE CODE OTHER-PADDING
                    @ DEVICE CODE 37

EXTRA-PADDING is ASCII with a slow  carriage-return.   This  mode  has
been  found  to  be  useful  with EXECUPORT, T.I., AND DATAPOINT 3300.
DEVICE CODE OTHER-PADDING is ASCII for a line-printer  which  requires
special  timing  for a slow linefeed as well as a slow carriage-return
and also requires a minimum number of characters per line  of  output.
Two   line-printers   are   currently  handled  via  the  DEVICE  CODE
OTHER-PADDING option.  These are the  ODEC  printer  and  the  MEMOREX
printer.    A  given  TIP  can  be  configured  so  that  DEVICE  CODE
OTHER-PADDING refers to either the ODEC or the MEMOREX printer but not
both.  

     Often the device code commands will be executed by  one  terminal
for  another  terminal,  as described in Section 5-D below.  Sometimes
they are executed as the last step before changing a terminal's  rate.
The  code  sets  ASCII,  EXTRA-PADDING,  and OTHER-PADDING are similar
enough so that a terminal shifting from one to another will  still  be
able  to  talk  to  the  TIP.   All are basically ASCII with different
timing for the end of line.  DEVICE CODE ASCII clears  the  effect  of
the other three DEVICE CODE commands.  The command

                    @DEVICE CODE 37

can be used to set up the TIP to correctly handle a Model 37 Teletype,
namely to compute even-parity for output characters (echoed characters
have the parity they had when sent from the terminal to the TIP).

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


B.    Talking to Another TIP

     One can talk to a device on another TIP (or your own  TIP)  using
the  TIP  as  a  fancy telephone connection.  This is not particularly
easy, especially since the only label a TIP knows for a device is  its
hardware   port  number,  which  neither  user  may  happen  to  know.
Supposing the port numbers are known, one must  establish  a  pair  of
connections   between   the   two  ports.   The  protocol  for  making
connections specifies that each end of each connection will be labeled
by  a  32-bit socket number.  The TIP puts the port number in the high
order 16 bits of the socket number, and 2 (or 3) in the low order bits
for the receiving (or sending) socket.  The user must tell the TIP the
Host number (in decimal) and socket number (in octal) for the  foreign
end  of  both  the  transmit and receive connections, for example, the
commands

                    @ SEND TO HOST 158
                    @ RECEIVE FROM HOST 158
                    @ SEND TO SOCKET 1600002
                    @ RECEIVE FROM SOCKET 1600003

Simultaneously the far end must establish the corresponding parameters
for  his  half  of  the  connection.   Then one side or the other must
initiate the connections using the two commands

                    @ PROTOCOL TO TRANSMIT
                    @ PROTOCOL TO RECEIVE

This will open the full duplex connection.  In the example  above  the
connection  is to Port 7 at Host 158.  Alternately, a shorter sequence
of commands may be used, namely

                    @ HOST 158
                    @ SEND TO SOCKET 1600002
                    @ RECEIVE FROM SOCKET 1600003
                    @ PROTOCOL BOTH

     If the terminals are full duplex, it will probably  be  necessary
for each terminal to use ECHO ALL mode.

     A problem in making TIP-to-TIP connections  is  ascertaining  the
port  numbers of the TIP ports between which communication is desired.
The greeting message typed by the TIP on a hunting port  includes  the
octal  port  number.   The  @RESET  command  on non-hunting ports also
provides this information (although  it  also  logs  out  a  logged-in
user).  In addition, the The Network Virtual TIP Executive (@N) offers
aid in this area  through  its  TRMINF  command.   The  socket  number
printed  by  the  TRMINF  command  is the octal port number of the TIP
terminal executing the TRMINF command via the @N command.

     In the future, we will make available via the Network Virtual TIP
Executive  a  capability  to  link and send messages to users on other
TIPs and TIP ports by name.  The  capability  already  exists  in  the

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


Network  Virtual  TIP  Executive  for  linking to users of some server
Hosts.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


C.    Binary Mode

     Seven-bit binary is possible using the regular  TELNET  Protocol.
It is necessary to turn on and off command interpretation to allow the
TIP input routines to pass along all 128  possible  input  characters.
There are two commands to do this,

                    @ INTERCEPT ESC
                    @ INTERCEPT NONE

The first command puts the TIP in its normal mode, the second in 7-bit
binary mode.

     Eight-bit binary mode is possible using the commands

                    @ BINARY INPUT START
                    @ BINARY INPUT END
                    @ BINARY OUTPUT START
                    @ BINARY OUTPUT END

When a TIP is in binary output mode,  all  eight  bits  of  characters
coming  from the network are sent to the terminal.  This may result in
strange things being printed on a printer.   It  would  probably  make
more  sense  to send 8-bit binary output to devices such as paper tape
punches.  When a TIP is in  binary  input  mode,  all  eight  bits  of
characters entered at the terminal are sent to the network.

     Since commands from a terminal in binary input mode or  INTERCEPT
NONE  mode can no longer be recognized, removing a terminal from these
modes must be done with a command from another terminal  as  described
immediately  below.  As the TIP's default mode is INSERT LINEFEED, the
user will probably desire to CLEAR INSERT LINEFEED  (@C  I  L)  before
using 8-bit binary mode; perhaps also for 7-bit binary mode.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


D.    Setting Another Terminal's Parameters

     Any command may be preceded by a number,  in  which  case  it  is
meant  for  a device other than your own.  The device port number must
be in octal.  For example,

                    @ 16 DEVICE RATE 633

would set the characteristics for device 16 to ASCII code,  2400  baud
input and output.  In this case we speak of "capturing" device 16.

     Such a mechanism needs some form of protection: the TIP remembers
the  number of the capturing device and does not allow a second device
also to capture until the first device  explicitly  gives  up  control
with the command

                    @ 16 GIVE BACK

     If a device chooses to capture himself by preceding  any  command
by  his  own  device  number he is then invulnerable to tampering from
another device.

     This format is usually used in conjunction with the  DEVICE  RATE
command  to  initialize  some non-standard device, like a printer or a
high-speed CRT terminal.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


E.    The DIVERT OUTPUT Command

     It is possible (with some care) to divert the output intended for
one  terminal to another terminal.  Presumably the second terminal has
a desired feature, like hard copy or high speed.  The command

                    @ 16 DIVERT OUTPUT

will cause all remotely generated  output  to  be  diverted  from  the
terminal  on  which  the command was typed to Terminal 16.  This state
will continue until any other command is  executed  at  the  diverting
terminal.   (Executing  another  command  does  not  do  a Give Back.)
Local-echoing will not be diverted,  and  input  may  proceed  at  the
diverting terminal.

     This mechanism is not natural to the structure  of  the  program.
In particular, the buffer allocation structure becomes confused if the
diversion aborts while output is in progress.  Chained diversion  will
also  confuse  the  TIP.  Please don't try these things: all that will
happen is that one or both terminals involved  will  stop  responding.
In  fact,  in  general, we discourage use of the DIVERT OUTPUT command
and suggest printing to TIP devices other than the user's own terminal
by  programs  such  as  the TIPCOPY program which runs on many network
TENEXs.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


F.    Editing

     At the moment the only editing command available is

                    @ FLUSH

which deletes all the  characters  in  the  TIP's  input  buffer.   In
current  practice this command is used to clear out any odd characters
stuck in a TIP prior to giving an OPEN command.  (The TIP  accumulates
characters typed in during periods of non-connection and sends them as
the first data over a new connection.)

     To abort a command, type a rubout or merely make something  about
the command illegal; for example,

                    @O X

The "X" aborts the OPEN command.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


G.    Wild

     Setting a device wild allows the device to receive any connection
from  a  designated  Host  or to receive any connection from any Host.
TIP ports cannot be set permanently wild from other  TIP  ports,  they
must be set wild by the NCC.  The command to set a port wild is

                    @SET DEVICE WILD

This instructs the TIP to accept an attempt to connect from  any  Host
using any sockets.  This command can be cancelled by the command

                    @CLEAR DEVICE WILD

If a user desires to accept an attempt to connect  from  a  particular
Host using any sockets the set of commands

                    @HOST #
                    @SEND TO WILD
                    @RECEIVE FROM WILD

should be used.  This instructs the  TIP  to  accept  any  attempt  to
connect  from  the Host whose decimal address is specified in the Host
command.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


H.    Low Level Protocol Commands

     Several low level TIP commands exist  which  allow  the  user  to
manually do Host/Host protocol.  These commands are

                    @ INITIAL CONNECTION PROTOCOL
                    @ PROTOCOL BOTH
                    @ CLOSE
                    @ PROTOCOL TO TRANSMIT
                    @ PROTOCOL TO RECEIVE
                    @ RECEIVE FROM HOST #
                    @ SEND TO HOST #
                    @ HOST #
                    @ SEND TO SOCKET #
                    @ RECEIVE FROM SOCKET #

     Examples of the use of some of these commands are given below.


          @H 69     /"logging in" to a socket
          @R F S 13 /other than socket 1
          @I C P    /on a server Host


          @C        /attempt to close both halves of
                    /an open connection
          Closed R  /closed R side of connection
          Closed T  /closed T side of connection


The rest of the low level protocol commands listed above were used  in
the example of section 5-B.

     There is one other low level protocol command, a command to reset
the NCP in the Host specified in a @ SEND TO HOST command.  Since this
command resets all connections between the TIP and the specified Host,
it  should only be used as a last resort.  A responsible person at the
TIP site should contact the NCC if the need arises.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


I.    Commands from the Network

     When a TIP terminal receives the character  207  (octal)  in  the
input  stream from the network, the characters following the 207 up to
the next linefeed are treated as  a  command  typed  on  the  terminal
keyboard.  (The 207 takes the place of the @; the @ should not be sent
through the network.) In this way Hosts can remotely control  the  TIP
terminals.   For example, a Host might send a command to the TIP which
causes maximum size messages to be sent from the TIP terminal  to  the
Host.  The TIPs themselves can send commands to other TIP terminals by
using the command

                    @ SEND COMMAND

which inserts the 207 character in the output stream to  the  network.
This  feature  is  evolving,  so  we  do  not recommend its use at the
present time.

     It must be noted that this 'feature' is ONLY available under  the
OLD  TELNET  protocol.   In  theory,  NEW TELNET will provide the same
capabilities within the framework of the protocol itself  rather  than
as a special mechanism for TIPs.  As of this writing, however, not all
the comparable options have been implemented.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


J.    The RESET Device Command

     The reset device command (@RESET) will  restore  a  port  to  its
initial  state.   Implicit  in  this  command  is  the  concept  of  a
"permanent  device."   Currently,   "permanent"   is   the   same   as
"non-hunting"  (see  section  5-A),  but  this  will not always be so.
Permanent devices are those requiring a particular set  of  parameters
that  is  not  expected  to change or perhaps for which the TIP cannot
hunt.  Examples are the IMLAC (no high speed hunt) and a line  printer
(no input possible).  Everything is reset as follows:

        a.   All network connections and attempts to open  connections
             are cleared;
        b.   If this device is captured  by  any  other  device,  that
             state  is  cleared  and  if  this device is capturing any
             other devices, that state is cleared;
        c.   Input buffers are initialized;
        d.   "Connection" parameters are reset  to  a  default  state*
             (i.e.,  echoing all, terminate every character, no insert
             linefeed, no device wild, intercept all);
        e.   The code, rate, and size are set to the hunting state.
        f.   The port's data set is hung-up.
        g.   Sets the terminal to make connections  under  OLD  TELNET
             protocol.

For permanent devices the RESET command does only a, b, c,  f,  and  g
above and prints "TIP NAME" followed by the TIP version number and the
octal port number.





















-----------------
*The default state for "binary" mode (Section 5.C) is rather
complicated and is being somewhat revised. For current infor-
mation, contact the NCC.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


K.    TIP Configuration and Device Pre-initialization

     The set of terminals and uses of these terminals typically varies
from  TIP  site  to  TIP site.  Therefore, the TIP software system has
been constructed in a way which is somewhat modular to permit  varying
configurations  of the TIP software at different sites.  For instance,
with line printers, it is possible for a given TIP system  to  contain
code  to  handle  an  ODEC  line  printer or a MEMOREX line printer or
neither (not both).  As another example, it is possible to  distribute
the available space for device buffers among all sixty-three TIP ports
or to  allocate  the  available  space  to  only  a  few  ports  (thus
effectively  disabling  the remaining ports).  Finally, it is possible
to configure the TIP so certain ports are automatically set up to have
pre-determined  parameters  at TIP initialization time, thus relieving
TIP site personnel or users of the burden of manually setting up these
device parameters.

     The complete list of presently available options is given below:

1.   TIP configured with ODEC code or MEMOREX code or neither.

2.   TIP configured with EXTRA-PADDING code or without it.

3.   TIP port pre-initialization

        a.   Input buffer size
        b.   Output buffer size
        c.   Input rate
        d.   Output rate
        e.   No hunt or hunt (see section A)
        f.   Extra-padding (D C E) or not
        g.   Other-padding (D C O) or not
        h.   Wild (S D W) or not
        i.   No insert linefeed (C I L) or not
        j.   Half duplex (E H) or not
        k.   No intercept character (I N) or any intercept
             character
        l.   Echo none (E N) or not
        m.   Compute 37 parity (D C 3) or not

Of the above, f, g, and m are mutually exclusive, j and l are mutually
exclusive, and f through m depend on e being set to no hunt.

     Some configuration must be specified for each TIP.  If nothing is
specified  by the TIP site personnel, the TIP will be configured in an
arbitrary (but hopefully reasonable) manner.   Requests  for  specific
TIP  configurations should be made by the designated representative of
the TIP site to the Network Control Center.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


6.   MAPPING THE VARIOUS DEVICES INTO THE NETWORK VIRTUAL TERMINAL

A.    TTY and TTY-like Devices (ASCII)

     At the moment this conversion follows the simple rule that if the
terminal  can  generate  and/or  print the code it will be sent and/or
received.  Otherwise there is no way to use the  code.   For  example,
there  is  no  way  to  enter  lower  case  characters from a Model 33
Teletype.


B.    2741 and  2741-like  Devices  (transmit  interrupt  and  receive
interrupt options required)

     The rule for these devices is  if  the  terminal  has  the  ASCII
graphic  it  will  translate  directly  to  that graphic.  Otherwise a
number of equivalences are defined,  most  of  which  consist  of  the
character  double-quote followed by some other character.  For each of
the eight variations of 2741 that we have considered there is at least
one way to type in the desired ASCII graphic.  To actually type in the
character  double  quote,  two  double  quotes  must  be   struck   in
succession.   On  output,  ASCII  characters which print on a Model 37
Teletype but have no representation on  a  2741  are  printed  as  the
equivalents  used  to  type  in  the  character, with some exceptions.
ASCII characters which do not print on a  Model  37  Teletype  do  not
print  on a 2741.  A double quote is not printed as two double quotes;
thus, on output the user must sometimes  determine  what  was  printed
from  the context as there is no unambiguous representation of all the
ASCII characters.

     The ATTN key is used to interrupt output.  It signals the TIP  to
hold off output for the duration of one TIP command; it is not seen by
the remote Host.  If used during input it is taken  as  a  request  to
send all the accumulated characters to the remote Host (like @TRANSMIT
NOW).

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


C.    ASCII/2741 Conversion Table

     If this table is printed on-line, it is meant to be printed on  a
printer  possessing the full ASCII character set.  Except where noted,
on input, any of the  alternate  2741  representations  of  the  ASCII
character  which it is possible to type on the given 2741 may be used.
On  output,  the  single  character  representation  is  chosen   when
possible.   In the "Symbol" column of the table, ↑ is used to indicate
control; e.g., ↑R means control-R.  Not all  ASCII  terminals  have  a
left  arrow  --  some  have an underbar instead.  Likewise, some ASCII
terminals have a caret where others have an uparrow.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


                    ASCII     ASCII     2741
Octal     Decimal   Name      Symbol    Representation

  0         0       NUL       ↑@        "P (no output)
  1         1       SOH       ↑A        "a (no output)
  2         2       STX       ↑B        "b (no output)
  3         3       EXT       ↑C        "c (no output)
  4         4       EOT       ↑D        "d (no output)
  5         5       ENQ       ↑E        "e (no output)
  6         6       ACK       ↑F        "f (no output)
  7         7       BEL       ↑G        "g
 10         8       BS        ↑H        "h or BS (output only)
 11         9       HT        ↑I        "i or HT (output only)
 12        10       LF        ↑J        "j or LF (output only)
 13        11       VT        ↑K        "k (no output)
 14        12       FF        ↑L        "l (no output)
 15        13       CR        ↑M        "m or NL (output only)
 16        14       SO        ↑N        "n (no output)
 17        15       SI        ↑O        "o (no output)
 20        16       DLE       ↑P        "p (no output)
 21        17       DC1       ↑Q        "q (no output)
 22        18       DC2       ↑R        "r (no output)
 23        19       DC3       ↑S        "s (no output)
 24        20       DC4       ↑T        "t (no output)
 25        21       NAK       ↑U        "u (no output)
 26        22       SYN       ↑V        "v (no output)
 27        23       ETB       ↑W        "w (no output)
 30        24       CAN       ↑X        "x (no output)
 31        25       EM        ↑Y        "y (no output)
 32        26       SUB       ↑Z        "z (no output)
 33        27       ESC       ↑[        "K or
                                        cent-sign (no output)*
 34        28       FS        ↑\        "L (no output)
 35        29       GS        ↑]        "M (no output)
 36        30       RS        ↑↑        "N (no output)
 37        31       US        ↑←        "O (no output)














-----------
*A cent-sign will print if the 2741 has one, otherwise
there will be no output.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


 40        32       SP        space     space
 41        33                 !         ! or plus-minus-sign
 42        34                 "         "" (input) and " (output)
 43        35                 #         # or "=
 44        36                 $         $ or "&
 45        37                 %         % or "?
 46        38                 &         & or "$
 47        39                 '         ' or ",
 50        40                 (         ( or "<
 51        41                 )         ) or ">
 52        42                 *         *
 53        43                 +         + or sideways-group-mark
 54        44                 ,         ,
 55        45                 -         -
 56        46                 .         .
 57        47                 /         /
 60        48                 0         0
 61        49                 1         1 or degree-sign or box
 62        50                 2         2
 63        51                 3         3
 64        52                 4         4
 65        53                 5         5
 66        54                 6         6
 67        55                 7         7
 70        56                 8         8
 71        57                 9         9`
 72        58                 :         :
 73        59                 ;         ;
 74        60                 <         < or "(
 75        61                 =         = or delta-sign
 76        62                 >         > or ")
 77        63                 ?         ?

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


100        64                 @         @ or "+
101        65                 A         A
102        66                 B         B
103        67                 C         C
104        68                 D         D
105        69                 E         E
106        70                 F         F
107        71                 G         g
110        72                 H         H
111        73                 I         I
112        74                 J         J
113        75                 K         K
114        76                 L         L
115        77                 M         M
116        78                 N         N
117        79                 O         O
120        80                 P         P
121        81                 Q         Q
122        82                 R         R
123        83                 S         S
124        84                 T         T
125        85                 U         U
126        86                 V         V
127        87                 W         W
130        88                 X         X
131        89                 Y         Y
132        90                 Z         Z
133        91                 [         [ or "B
134        92                 \         \ or "/
135        93                 ]         ] or "E
136        94                 ↑         caret or uparrow or "! or
                                        "plus-minus-sign
137        95                 ←         underbar or slash-b

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


140        96                 `         "*
141        97                 a         a
142        98                 b         b
143        99                 c         c
144       100                 d         d
145       101                 e         e
146       102                 f         f
147       103                 g         g
150       104                 h         h
151       105                 i         i
152       106                 j         j
153       107                 k         k
154       108                 l         l
155       109                 m         m
156       110                 n         n
157       111                 o         o
160       112                 p         p
161       113                 q         q
162       114                 r         r
163       115                 s         s
164       116                 t         t
165       117                 u         u
166       118                 v         v
167       119                 w         w
170       120                 x         x
171       121                 y         y
172       122                 z         z
173       123                 {         "6
174       124                 |         vertical-bar or "V
175       125                 }         "9
176       126       tilde     }         not-sign or "underbar
177       127       DEL       rubout    "D (no output)

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


7.   TIP MESSAGES TO THE TERMINAL USER


 BAD           The TIP doesn't recognize the command

 Closed        Connection closed, usually by server Host

 Connection Restored
               Destination Host has restored the connection as it
                 was before the Host halted.

 Connection Suspended
               Destination Host has halted operation.

 Host broke the connection
               The Destination Host's service is restored but all
                 network connection tables have been reset.

 Host not responding
               Destination Host not up from the network's point 
                 of view. It is not known when service
                 will resume.

 Host Scheduled Down Until ...
               Destination Host is scheduled down until the
                 date and time indicated.

 Host Unscheduled Down Until ...
               Destination Host is unscheduled down until the
                 date and time indicated.

 ICP Interferred With
               The Host has not performed the ICP correctly
                 and the TIP has refused to open a connection.

 Latest Net news...
 Use "@N<cr>" followed by "netnews<cr>"
               The TIP is conveying to the user the date the
                 latest news item for TIP users was generated.

 Net Trouble   Destination IMP cannot be reached due to some
                 kind of trouble in the network.

 NO            Parameters may not be set for specified terminal.

 Num           The TIP expected a number -- command terminated.

 Open          Connection opened by server Host.

 R             Refers to the Receive side of a connection.

 Refused       The remote Host rejected the attempt to establish
                 connections.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


 T             Refers to the Transmit side of a connection.

 TIP GOING DOWN  The TIP is going down in the number of minutes
                 indicated -- quickly stop what you are doing
                 and stop using the TIP.

 TIP NAME      The TIP heard the user dial in and establish rate.
                 The number following NAME is the TIP software
                 system version number. It is followed by the
                 octal port number.

 Trying        The TIP is now servicing the user's OPEN request.

 Wait          The TIP is attempting to contact an RSEXEC Server.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


8.    TIP MAGNETIC TAPE OPTION

     As one method of increasing the usefulness of the  Terminal  IMP,
we have developed a magnetic tape transfer capability as a TIP option.
The first such option was delivered to  the  field  during  the  first
quarter  of 1972.  In order to ease the problems of interfacing such a
specialized terminal type, we chose to specify  the  attachment  of  a
standard Honeywell peripheral unit rather than attempting to solve the
problem of tape drive attachment in a more generalized way.  The  unit
chosen is the Honeywell 316-4021 option which consists of a tape drive
controller and one drive unit (the controller  itself  is  capable  of
handling up to seven additional 316-4022 drives).  The characteristics
of the tape drive include:

      - Read/write speed of 26 inches per second
      - Seven-track tapes
      - Even or odd parity (program selectable)
      - Industry compatible 200, 556, or 800 bpi

In  addition  to  the  tape  drive  and  controller,  the  problem  of
programming  for  the  controller  and  the  buffering of tape records
dictated the addition of a separate 4K memory bank  to  TIPs  equipped
with this option.

     The most immediate pressure for the addition of a  magnetic  tape
option to the TIP was the desire to enable a pair of TIP users to copy
tapes over the network from one TIP to another, rather  than  shipping
physical tapes by mail.

     The magnetic tape system communicates with  the  network  through
the  TIP,  although  in  many  cases  it  bypasses the usual TIP code,
substituting its own procedures to allow for the  special  nature  and
relatively  high  data  rate  of  a  magnetic  tape terminal.  In most
respects, however, the tape  unit  appears  as  a  standard  terminal,
arbitrarily  designated  number  77.   On a TIP equipped with magnetic
tape, line 77 cannot be used as an external terminal.

     An additional terminal is required to issue commands to the  tape
and receive status information and error comments.  This may be of any
type  and  may  be  connected  to  any   line.    Its   use   as   the
tape-controlling terminal can be concurrent with its normal usage.

     The specific hardware design of  the  magnetic  tape  units  used
dictates some constraints.  Tape format is 7-track using either odd or
even parity.  In  memory,  tape  frames  are  stored  two  to  a  word
occupying the high order twelve bits of each word.  Frames can only be
written in pairs; reading a record with an odd number of frames causes
the  control  unit  to  append  an  extra  null frame to the record in
memory.

     The maximum record length  is  2400  characters  (frames).   This
limit  is based on the amount of TIP core available for buffering.  If
all  maximum  length  records  are  used,  this  results  in  an   80%

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


utilization  of  tape  space at 800 bpi (the remainder is inter-record
gaps).

     The commands relating to magnetic tapes are  of  a  less  general
form  than  other  TIP  commands.   Neither  multiple  spaces nor word
completion  are  presently  permitted,  and  numbers   are   used   to
distinguish different commands.  The format is @ M #1 #2, where #1 and
#2  are  the  command  number  and  its  argument  respectively.   The
commands, their numbers and arguments are:

      Rewind                 1  decimal-count
      Forward Space Record   2  decimal-count
      Forward Space File     3  decimal-count
      Backward Space Record  4  decimal-count
      Backward Space File    5  decimal-count
      Read Record            6  decimal-count
      Read File              7  decimal-count
      Write Record           8  decimal-count
      Write File             9  decimal-count
      Transfer Files         10 decimal-count
      Setup TIP-TIP Copy     11 foreign-TIP-number
      Abort and Initialize   12 parity (i.e. even or odd)
      Write File Mark        13 decimal-count
      Set Parity             14 even-or-odd

A file mark is treated by the hardware as a record and  must  thus  be
accounted  for  when  spacing  or reading by the RECORD commands.  The
SETUP COPY command is  used  in  the  establishment  of  a  connection
between TIPs, described below.

     There are some important  things  to  note  about  magnetic  tape
commands.   All  regular  TIP commands given for the tape, e.g., those
specifying Host or socket parameters, must be preceded by  77.   This,
of  course,  captures  the  tape  drive  for  the  terminal giving the
commands.   All  special  tape  commands  (those  beginning  with  M),
implicitly  capture device 77 in the same way.  Thus once any terminal
issues a command for device 77 or any MAG command, it has captured the
magnetic tape; no one else is permitted to control it until the owning
terminal has issued the @77 GIVE BACK command.

     A  network  connection  must  exist  before  information  may  be
transferred.  A typical sequence of TIP commands which might establish
a connection between two magnetic tapes  follows:  at  each  TIP,  the
operator  would  issue  a Setup Copy command to the Host number of the
other TIP.  This command establishes socket numbers for the "standard"
TIP-to-TIP  magnetic  tape  connection.  Status information about this
connection such as Open, Closed, etc.  will be followed by MTR and MTT
rather  than the usual R and T to differentiate magnetic tape activity
from other activity of the controlling terminal.  Then the write  side
would  give  a Transfer Files command which would close MTT and MTR if
necessary, and open MTT.  When MTT opens, a request  is  sent  to  the
other  TIP,  and  MTT is closed.  The request prompts the other TIP to
open MTR (his MTT), rewind his  tape,  read  and  send  the  requested

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


number  of  files,  rewind  his  tape,  and close the connection.  The
writing TIP also rewinds its tape after writing the last file.

     Errors and abnormal status conditions are detected  and  messages
are  typed  out  on the controlling terminal.  Errors which will be of
significance to the operator include:

      UNREC ERR      Unrecoverable read or write errors
                     after 20 retries -- a bad spot in
                     the tape or tape drive hardware
                     problems.  The results of the
                     20th try are used.

      TIMEOUT        The tape controller remains busy
                     or no network activity occurs for
                     too long.  The command is aborted.

      OFFLINE        The mag tape unit is somehow not
                     operational (power off, no tape
                     mounted, vacuum off, wrong unit
                     number, etc.).  The command
                     is aborted.

      EOT            The tape has moved past the end-of-tape
                     marker.  The command is aborted.

The error messages may be followed by MTR or MTT to denote which  side
of  the  connection originated the message.  At the request of the TIP
sites with magnetic tape option, records read in error  presently  are
reread  many times and then transmitted anyway after printing an error
message.  If aborted by an error condition, the Transfer Files command
will  attempt  to  restart  the  transfer  requesting the other TIP to
rewind its tape, skip over as many files as have already been  written
and send the remaining files.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


9.  CONNECTION OF TERMINALS TO THE TIP

A.  General Comments


     The TIP allows the connection of most terminals that  conform  to
the  EIA  RS232  standard.  The TIP is built such that it appears to a
terminal to be a modem and appears to a modem as  a  terminal.   If  a
terminal  has  a  25  pin connector (DB25P, several manufacturers) and
works with a 103 modem or  equivalent,  it  will  probably  work  when
plugged  into an LIU card marked "T".  Appendix D lists terminals that
have been used.

     This section specifies the interface between a terminal  and  the
TIP.   See  Section 9-C for connections involving modems.  It is hoped
that by examining this section, an engineer will be able to  determine
whether  he has met the conditions necessary for proper operation of a
terminal connected to the TIP.

     To  a  large  extent,  the  TIP  follows  EIA  Standard  RS-232C.
Familiarity  with  that document is recommended.  (The pin allocations
specified by that standard are given inside the front cover.)

     In order to connect a terminal to the  TIP  without  modems,  one
must look like a modem to the other.  Input and output connections are
therefore cross-connected at the LIU pads, as shown in Table 9-1.

     Expansions to  this  specification  are  planned  in  the  future
(particularly  as  this  relates to control signals).  It is therefore
very important that this section be kept up-to-date as  revisions  are
provided.

     Connector - The connector from the terminal should be  equivalent
to  a  Cinch  DB-25P.   It  is  recommended  that  extension cords for
terminals provide for all  25  pins  in  order  to  allow  for  future
changes.

     Signal Levels -  All  signals  are  represented  by  bipolar  low
voltage  levels.   All  signals  are  measured  with respect to signal
ground.  The source of a signal shall deliver a voltage  of  magnitude
between  3  and  25 volts into a load of not less than 3000 ohms.  The
reactive component of  the  load  shall  not  be  inductive,  and  the
capacitance  shall  not  exceed  2500  pfd.  measured at the interface
connector.  The signals shall be interpreted in this way:

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


                        Data Signals

            -25<Vd<-3 is marking or logical one
            +3<Vd<+25 is spacing or logical zero


                 Control and Timing Signals

                -25<Vc<-3 is considered OFF
               +3<Vc<+25 is is considered ON


     Signal Use - The TIP software handles the  signals  as  shown  in
Table 9-1.

     Character Code - The  TIP  software  accepts  ASCII  8-bit  code.
Parity  is  ignored  on  input, and undefined on output.  IBM 2741 and
2741-like devices are specially handled.  See Section 4-A.

     Carriage Return Speed - Carriage return  speed  is  known  to  be
reasonably  compensated for Teletypes 33, 35, and 37; and, separately,
for Execuport-like devices.   A  line  printer  (ODEC)  with  a  small
(256-character)   buffer   is   also   reasonably  compensated.   This
compensation is set by the TIP program.

     Terminals Which Provide Their Own Clock - Terminals which provide
their  own  clocks  for  transferring data can be connected to the TIP
provided they meet the previous specifications.  The clocks should  be
routed  to  LIU pads E15 and E17.  The data lines should change on the
positive edges of the clocks, and should be sampled  on  the  negative
edges.   (This  is not to be interpreted as an indication that the TIP
works with synchronus modems or devices.   Characters  must  still  be
formatted  with  stop-start  bits  since  the actual operating mode is
basically character-asychronus.)


B.  Direct Terminal Connection

     Table 9-1 lists how the  TIP  uses  RS232  signals  for  terminal
connections.         

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


        TABLE 9-1 TIP SIGNAL ALLOCATION FOR TERMINALS*


EIA     LIU     DESIGNATION
PIN     PAD     (FROM THE POINT OF VIEW OF THE TERMINAL)

 1      E1      PROTECTIVE GROUND (AA) - Used.
 2      E3      TRANSMITTED DATA (BA) - Used for data going from
                the terminal to the TIP.
 3      E2      RECEIVED DATA (BB) - Used for data going from the
                TIP to the terminal.
 7      E7      SIGNAL GROUND (AB) - Used.
 8      E20     RECEIVED LINE SIGNAL DETECTOR (CF) - Modem control
                bit 3.  Held ON by the TIP, except for a short
                (approximately 1/2 sec.) period following an ON
                to OFF transition of DATA TERMINAL READY, during
                which it goes off.
20      E8      DATA TERMINAL READY (CD) - Modem status bit 2.
                THIS SIGNAL IS USED BY THE TIP to determine that
                the terminal is connected to the TIP.  If "hunt"
                mode is enabled for this device, an ON to OFF
                transition of this signal initiates "hunt" mode.

        The following control signals are held on by the TIP
        software:

 5      E4      CLEAR TO SEND (CB) - Modem control bit 0.  Held
                ON by the TIP.
 6      E19     DATA SET READY (CC) - Modem control bit 2.  Held
                ON by the TIP.
16      E14     SECONDARY RECEIVED DATA (SBB) - Modem control bit
                1. Held ON by the TIP.

        The following status signals are ignored by the TIP
        software:

 4      E5      REQUEST TO SEND (CA) - Modem status bit 0.
                Ignored by the TIP.
12      E12     SECONDARY RECEIVED LINE SIGNAL DETECTOR (SCF) -
                Modem status bit 3.  Ignored by the TIP.
13      E13     SECONDARY CLEAR TO SEND (SCB) - Modem status bit
                4. Ignored by the TIP.
14      E16     SECONDARY TRANSMITTED DATA (SBA) - Modem status
                bit 5.  Ignored by the TIP.
19      E6      SECONDARY REQUEST TO SEND (SCA) - Modem status bit
                1. Ignored by the TIP.

*This configuration makes the LIU look approximately like a 103
modem to the terminal.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


C.  Modems


     It is desired that the TIP be able to operate with terminals over
private or leased lines, or over the switched telephone network.  This
requires the use of a pair of modems between the terminal and the TIP.
The TIP basically supports the Bell 103 class of modems.  An extension
is the Vadic 3400 which is 1200 baud full duplex with 103 protocol.  A
202  equivalent  modem is being used in Simplex mode to drive a remote
line printer.

     It may be that a group desiring to  use  another  type  of  modem
could  coax  that  modem  to  work  within  the available software and
hardware structure.  For  that  purpose,  this  section  will  try  to
describe  the  difficulties  in  using  half-duplex modems, the use of
synchronous  modems,  and  the  manner  in  which  the  103  modem  is
supported.


        Half-Duplex Modems


     Half-duplex modems are modems in which data on the  primary  data
channel  can  flow  in only one direction at a time.  Data cannot flow
both ways at the same time.  There may or may not be a "secondary"  or
"supervisory"  channel  which  points  in  the  direction opposite the
primary  channel.   The  essential  problem  involved  in  half-duplex
operation  is  control  of  the  direction of data flow on the primary
channel.  Significant questions are:

        - What protocol should be adopted for turning the line
          around -- special control characters, or use of a
          secondary channel?
        - Which end (if either) is in control of the channel?
        - If the terminal is receiving a large listing, how
          can the user terminate the output when the channel
          is pointing the wrong way?
        - Who should do the echoing and when?

     These   problems   are   clearly   a   matter   of    convention.
Unfortunately, EIA Standard RS-232, which many modems follow, does not
define a convention which would answer these questions.   It  is  very
helpful  if  a  request  to  BBN  for  a  modem  on the TIP includes a
statement of what terminals are to be connected to the other end,  and
what convention they follow.


        Synchronous Modems


     The TIP should be able to use synchronous  modems  provided  that
the  characters  are  framed  by  start  and  stop  bits, and that the
synchronous modem is similar enough to a modem which is  supported  by

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


the  software.   The  device  rate  must be set to external clock mode
through the use of a TIP command such as:

                  @ DEVICE RATE 1023

        103 Modems

Description:


     The Bell Telephone 103 modem is a low-speed  (up  to  300  baud),
asynchronous, full-duplex modem for use on private leased lines or the
switched telephone network.

Connection:


     See Table 9-2 for the pin connection on the LIU card, and  for  a
description of the TIP's use of the signals.

Operation:


     In use, the  modem  at  the  TIP  end  is  usually  left  in  the
AUTO-ANSWER  mode.   When  a  user  wishes to connect his terminal, he
dials the number of the modem at the TIP.  After the ring is  answered
and  a data carrier is heard, the user depresses the DATA button.  The
user is then connected as if his terminal were connected  directly  to
the  TIP.   He  types  the  characteristic character for his terminal,
receives the header message,  and  proceeds  to  use  the  network  as
desired.

Simplex Modem Connections



     A simplex modem connection is defined as a modem connected to  an
LIU  card with data flowing in one direction only.  Its primary use is
to connect a line printer at a remote site to  a  TIP.   A  1200  baud
asynchronous modem (with supervisory reverse channel) is usually used.
Any modem will probably work including half duplex types.   Since  the
half  duplex  protocol  is  to  have  the called modem transmit first,
simplex should work quite well.

     The LIU will hold EIA  pins  3  and  11  at  ground.   There  are
normally  not  enough pads on the pin 3 patch panel, so a minor change
to the LIU card and a jumper must be prepared.  If this connection  is
desired, call the NCC for further information and assistance.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


                        TABLE 9-2
                TIP SIGNAL ALLOCATION FOR 103 MODEM

EIA     LIU
PIN     PAD

 1      E1      PROTECTIVE GROUND (AA) - Used.
 2      E2      TRANSMITTED DATA (BA) - Used for data going from
                the TIP to the MODEM.
 3      E3      RECEIVED DATA (BB) - Used for data going from the
                MODEM to the TIP.
 5      E5      CLEAR TO SEND (CB) - Modem status bit 0.  Ignored
                by the TIP.
 6      E6      DATA SET READY (CC) - Modem status bit 1.  Used
                in conjunction with CF to determine whether a
                legitimate data call has been made or whether the
                connection should be terminated.
 7      E7      SIGNAL GROUND (AB) - Used.
 8      E8      RECEIVED LINE SIGNAL DETECTOR (CF) = modem status
                bit 2.  This signal is used by the TIP to
                determine that a connection has been made.  If
                "hunt" mode is enabled for this device, an ON
                to OFF transition initiates "hunt" mode.
20      E20     DATA TERMINAL READY (CD) - Modem control bit 3.
                Held ON by the TIP, except for a short
                (approximately 1/2 sec.) period after TIP
                software decides whether a legitimate data call
                has been made or whether the connection should be
                terminated.

        All other signals are connected as shown in Appendix A
        but are not used by the 103 modem.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


                         Table 9-3

               LIU Patch Panel Configurations

     EIA        103       STD         MDL37  SIMPLEX   202
     PIN        MODEM     TERMINAL    TTY    MODEM*    MODEM
     1          1         1           1      1         1
     2          2         3           3      2         2
     3          3         2           2      OPEN      3
     4          4         5           5      4         4
     5          5         4           4      5         5
     6          6         19          8      6         6
     7          7         7           7      7,3       7
     8          8         20          20     12        8
     9          -         -           -      -         -
     10         -         -           -      -         -
     11         11        11          11     7         14
     12         12        12          12     8         16
     13         13        13          13     13        13
     14         14        16          16     14        12
     15         15        17          17     15        15
     16         16        14          14     16        11
     17         17        15          15     17        17
     18         -         -           -      -         -
     19         19        6           6      19        19
     20         20        8           8      20        20
     21         -         -           -      -         -
     22         -
     23         -         -           -      -         -
     24         24        25          25     24        24
     25         25        24          24     25        25


     Labels     (M,103,   (T)         (37)   (SM)      (202)
                or None)


     *A jumper and a minor change to the LIU card is
     needed for this configuration.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


APPENDIX A:  HOST ADDRESSES 

     The following is a table of Hosts on the Network at the time this
update  was  published.   The  columns (from left to right) are: Octal
Host address, Decimal Host address, Host name, (Interface computer, if
any,  and)  computer  type, Status of the system and type of operating
system.


Host Address    Hostname        (Interface)->   Status/
Octal  Decimal                  Computer        System
-------------------------------------------------------------------
001     1       UCLA-ATS        PDP-11/45       User 
                                                ANTS, ELF
101     65      UCLA-CCN        IBM 360/91      Server
                                                TSO, OS-MVT
201     129     UCLA-CCBS       (PDP-15)->      limited Server
                                PDP-10          DEC 10/50

002     2       ARC-RD          PDP-11/40       User
                                                ELF
102     66      SRI-AI          (PDP-10)->      limited Server
                                PDP-15          TENEX
202     130     SRI-ARC         PDP-11/40       User
                                                ELF
003     3       UCSB-MOD75      IBM 360/75      Server
                                                OLS, OS-MVT
203     131     CHII            (VDH)->         Server 
                                Signal-1

004     4       UTAH-10         PDP-10          limited Server
                                                TENEX
204     132     UTAH-TIP                        TIP

105     69      BBN-11X         PDP-11          Server
                                                ELF
205     133     BBN-11XB        PDP-11          User
                                                ELF
305     197     BBN-TENEXA      PDP-10          limited Server
                                                TENEX

006     6       MIT-DEVMULTICS  H-68/80         User 
                                                Multics
106     70      MIT-DMS         PDP-10          Server
                                                ITS
206     134     MIT-AI          PDP-10          limited Server
                                                ITS
306     198     MIT-ML          PDP-10          Server
                                                ITS

007     7       RAND-RCC        IBM 370/158     Server
                                                OS-MVT
107     71      RAND-ISD        PDP-11/45       Server 

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


                                                UNIX

010     8       SDC-LAB         IBM 370/145     limited Server
                                                SDC-VM
110     72      SDC-CC          IBM 370/158     Server
                                                VS2

011     9       HARV-10         PDP-10          limited Server
                                                DEC 10/50
111     73      HARV-1          PDP-1           User
311     201     HASKINS         (VDH)->         User
                                PDP-11/45       ELF, RSX-11D

012     10      LL              IBM 370/168     limited Server
                                                VM-370
212     138     LL-TSP          TSP             User
312     202     LL-11           (PDP-11/45)->   User
                                SPS-41          ELF, RSX-11M

013     11      SU-AI           PDP-10          Server
                                                DEC 10/50
113     75      SU-DSL          (VDH)->         User
                                PDP-11/20       ELF

014     12      ILL-CAC         PDP-11/20       User
                                                ANTS
114     76      ILL-NTS         PDP-11/50       User
                                                UNIX
214     140     UNIVAC          (VDH)->         User
                                (UNIVAC 1218)->
                                UNIVAC 1616

015     13      GUNTER          (PDP-11/35)->   User
                                B4700           (ELF) MCPV

016     14      CMU-10B         PDP-10          Server
                                                DEC 10/50
116     78      CMU-10A         PDP-10          limited Server
                                                DEC 10/50
216     142     CMU-11          C.mmp           Summer '75
                                                Hydra
316     206     CMU-CC          (PDP-11)->      Summer '75
                                IBM 360/67 + UNIVAC 1108

017     15      I4A-TENEX       (PDP-10)->      Server
                                ILLIAC IV + B6700       (TENEX)
117     79      I4-ELF          (PDP-11)->      Server
                                ILLIAC IV       (ELF)
217     143     I4B-TENEX       (PDP-10)->      limited Server
                                ILLIAC IV       (TENEX)

020     16      AMES-67         IBM 360/67      Server
                                                TSS/360

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


220     144     AMES-TIP                        TIP
320     208     AMES-11         (PDP-11/45)->   User
                                CDC 7600

221     145     MITRE-TIP                       TIP

022     18      RADC-MULTICS    H-6180          User
                                                Multics
222     146     RADC-TIP                        TIP

023     19      NBS-ICST        PDP-11/45 + PDP-10 Not Active.
223     147     NBS-TIP                         TIP

024     20      ETAC            (PDP-11/45)->   Summer '75
                                CDC-6600        (ANTS)
224     148     ETAC-TIP                        TIP

025     21      LLL-RISOS       PDP-11/45       limited Server
                                                RATS

026     22      ISI-SPEECH11    (PDP-11/45)->   User 
                                SPS-41          ELF, DOS
126     86      USC-ISI         PDP-10          Server
                                                TENEX
226     150     USC-ISIB        PDP-10          limited Server 
                                                TENEX
326     214     ISI-XPG11       PDP-11/40       User 
                                                ELF

027     23      USC-44          IBM 360/44      Server
                                                USC-PS
227     151     USC-TIP                         TIP
327     215     USC-ECL         PDP-10          Server
                                                TENEX

230     152     GWC-TIP                         TIP

231     153     DOCB-TIP                        TIP

032     26      SDAC-44         IBM 360/44      limited Server
                                                DOS/360, USC-PS
232     154     SDAC-TIP                        TIP
332     218     SDAC-CCP        BBN-Pluribus    alternate to
                                                #39 decimal

033     27      BELVOIR         (PDP-11)->      User 
                                CDC 6600        (ANTS) Scope

034     28      ARPA-DMS        PDP-15          limited Server
                                                Keydata DMS
234     156     ARPA-TIP                        TIP

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


035     29      BRL             PDP-11/40       User
                                                ANTS

236     158     BBN-TESTIP                      TIP

037     31      CCA-TENEX       (PDP-10)->      dedicated Server
                                Datacomputer    TENEX,Datacomputer
137     95      LL-ASG          (VDH)->         User 
                                PDP-11/50       ELF
237     159     CCA-TIP                         TIP
337     223     CCA-SIP         PDP-11/40       User
                                                ELF

040     32      PARC-MAXC       (Nova)->        limited Server
                                MAXC            TENEX
140     96      PARC-VTS        Nova 800        User
                                                VTS

041     33      FNWC            (CDC 3200)->    Not Active
                                CDC 6500        SCOPE
241     161     FNWC-TIP                        TIP

042     34      LBL             (CDC 6600)->    Server
                                CDC 7600        (Sesame) BKY
142     98      UCB             (VDH)->         User
                                PDP-11/45       ELF, DOS

043     35      UCSD-CC         (Micro 810)->   Server
                                B6700           MCP

044     36      HAWAII-ALOHA    HP 2100         User
                                                Menehune
244     164     ALOHA-TIP                       TIP
344     228     HAWAII-500      (PDP-11)->      limited Server
                                BCC 500         (ELF) BKY OpSys

045     37      RML-7           Sigma 7         User
                                                BPS
245     165     RML-TIP                         TIP

046     38      PURDUE          PDP-11/45       User
                                                ANTS

047     39      SDAC-CCP        BBN-Pluribus    User
147     103     SDAC-DP         IBM 360/40      User
                                                DOS/360
247     167     SDAC-NEP        IBM 360/40      User
                                                DOS/360

050     40      BBN-NCC         H-316           User
250     168     NCC-TIP                         TIP
350     232     BBN-1D          PDP-1           User

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


051     41      NORSAR-40B      IBM 360/40      Fall '75
                                                DOS/360
251     169     NORSAR-TIP                      TIP
351     233     NORSAR-40A      IBM 360/40      Fall '75
                                                DOS/360

052     42      LONDON          (PDP-9)->       limited Server
                                IBM 360/195     OS/MVT ?
152     106     LONDON-VDH      (VDH)->         User
                                (PDP-9)->       CMAS
                                ATLAS II
252     170     LONDON-TIP                      TIP

053     43      OFFICE-1        PDP-10          dedicated Server
                                                TENEX,NLS
253     171     TYMSHARE-TIP                    TIP

054     44      MIT-MULTICS     H-6180          Server 
                                                Multics

055     45      SCI-TENEX       PDP-10          limited Server

056     46      RUTGERS-10      PDP-10/70       Server
                                                TOPS-10
156     110     ADR             (VDH)->         User
                                PDP-11          ELF
256     174     RUTGERS-TIP                     TIP

257     175     WPAFB-TIP                       TIP

160     112     ASL             (VDH)->         User
                                PDP-11/10       ELF
260     176     AFWL-TIP                        TIP 

061     49      BBN-TENEXB      PDP-10          limited Server
                                                TENEX
161     113     BBN-SAT         (VDH)->         User 
                                PDP-11/40       ELF, RT-11
261     177     BBN10X-TIP                      TIP
361     241     BBN-TENEX       PDP-10          Server
                                                TENEX

062     50      BBN-SPEECH-11   (PDP-11/40)->   Summer '75
                                SPS-41          ELF
162     114     BBN-TENEXD      PDP-10          limited Server
                                                TENEX

063     51      SRI-NSC11       (PDP-11/40)->   User
                                SPS-41          ELF, DOS
163     115     SRI-IA11        PDP-11/40       User
                                                RSX-11M
263     179     SRI-CBC11       PDP-11/10       User
363     243     SRI-PKT         PDP-11          Summer '75

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


264     180     ISI-TIP                         TIP
364     244     USC-ISIC        PDP-10          Server
                                                TENEX

065     53      EGLIN           CDC 6600        User
                                                SCOPE

066     54      SCRL-ELFDEVEL   PDP-11/20       User
                                                ELF
166     118     SCRL-ELF        (VDH)->         User
                                PDP-11/45       ELF

067     55      ANL             (VARIAN-73)->   Server 
                                IBM 370/195     OS-MVT

070     56      SUMEX-AIM       PDP-10          Server
                                                TENEX

071     57      NSA             PDP-10          Fall '75
                                                TENEX


Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


APPENDIX B:  COMMAND SUMMARY*


                                                          Section
BINARY INPUT END
     Leave 8-bit binary input mode                            5-C

BINARY INPUT START
     Enter 8-bit binary input mode                            5-C

BINARY OUTPUT END
     Leave 8-bit binary output mode                           5-C

BINARY OUTPUT START
     Enter 8-bit binary output mode                           5-C

CLEAR DEVICE WILD
     Set device to be unwild                                  5-G

CLEAR INSERT LINEFEED
     Stop inserting linefeed after carriage-return            4-B

CLOSE
     Close all outstanding connections, or abort current Host
     login                                                    4-D

DEVICE CODE 37
     Establish parity computation for Model 37 Teletype       5-A

DEVICE CODE ASCII
     Establish code conversion for an ASCII terminal          5-A

DEVICE CODE EXTRA-PADDING
     Establish code conversion for a terminal with slow CR    5-A

DEVICE CODE OTHER-PADDING
     Establish code conversion for a line printer             5-A

DEVICE RATE #
     # is a 10-bit code specifying hardware rate and          5-A
     character size settings

# DIVERT OUTPUT
     Capture device # and divert this terminal's output       5-E
     to it. # is an octal number.

ECHO ALL
     Local TIP-generated echo -- TIP echoes everything        4-B


---------------
*  # denotes a decimal number unless otherwise stated

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


ECHO HALFDUPLEX
     Terminal-generated echo -- TIP echoes nothing            4-B

ECHO LOCAL
     Send the Telnet "ECHO LOCAL" character and               4-B
     perform internal E A

ECHO NONE
     Remote Host-generated echo for data --                   4-B
     TIP echoes commands

ECHO REMOTE
     Send the Telnet "ECHO REMOTE" character and              4-B
     perform internal E N

FLUSH
     Delete all characters in input buffer                    5-F

# GIVE BACK
     Release control of captured device #.                    5-D
     # is an octal number.

HOST #
     Simultaneous "@S T H" and "@R F H"                       5-B

INITIAL CONNECTION PROTOCOL
     Start the initial connection protocol                    5-H

INSERT LINEFEED
     Insert linefeed after carriage-returns                   4-D

INTERCEPT #
     Use # as TIP command character                           4-D

INTERCEPT ESC                                                 4-D
     Leave 7-bit binary mode                                  5-C

INTERCEPT NONE                                                4-D
     Enter 7-bit binary mode                                  5-C

LOGIN #
     An obsolete form of OPEN

M # #
     Mag tape command # with argument #                       8

NETWORK-VIRTUAL-TIP-EXECUTIVE                                 4-F
     Connects the user to the Network-Virtual-
     TIP-Executive.
OPEN #
     Open a bi-directional connection to the Host
     decimal address is specified                             4-C

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


PROTOCOL BOTH
     Simultaneous "@P T T" and "@P T R"                       5-B


PROTOCOL TO RECEIVE
     Manually initiate connection protocol                    5-B

PROTOCOL TO TRANSMIT
     Manually initiate connection protocol                    5-B

RECEIVE FROM HOST #
     Establish Host # parameter for manual                    5-B
     initialization

RECEIVE FROM SOCKET #
     Establish socket # parameter for manual                  5-B
     initialization of connection -- socket # is
     given in octal

RECEIVE FROM WILD
     Equivalent to "@R F S <any>"                             5-G

RESET
     Reset current TIP port parameters                        5-J

Reset NCP
     Resets NCP                                               5-H

SEND BREAK
     Send the Telnet "BREAK" character                        4-D

SEND COMMAND
     Send the command escape character                        5-I

SEND SYNC
     Send the Telnet "SYNC" character and                     4-D
     an "INTERRUPT SENDER" message

SEND TO HOST #
     Establish Host # parameter for manual                    5-B
     initialization of connection

SEND TO SOCKET #
     Establish socket # parameter for manual                  5-B
     initialization of connection -- socket # is
     given in octal
SEND TO WILD
     Equivalent to "@S T S <any>"                             5-G

SET DEVICE WILD
     Equilvalent to the commands "@R F H <any>",              5-G
     "@S T H <any>",  "@S T S <any>",  and "@R F S <any>".

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


TRANSMIT EVERY #
     Send off input buffer at least every #th                 4-B
     character where 0<#<256

TRANSMIT NOW
     Send off input buffer now                                4-B

TRANSMIT ON LINEFEED
     Send input buffer every time a linefeed is               4-B
     encountered

TRANSMIT ON MESSAGE-END
     Send input buffer every time an end-of-message           4-B
     is encountered

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


APPENDIX C:  BIBLIOGRAPHY


     Most of the following should be available through your Network
Information Center Station Agent or the

               ARPA Network Information Center
               Augmentation Research Center
               Stanford Research Institute
               333 Ravenswood Avenue
               Menlo Park, California  94025

Specifications for the Interconnection of a Host and an IMP, BBN
Report No. 1822 (IMP-HOST section of NIC 7104).

IMP Operating Manual, BBN Report No. 1877.

The Interface Message Processor for the ARPA Computer Network, Heart
et al, Proceedings AFIPS 1970 Spring Joint Computer Conference (NIC
4655).

The Network Working Group "Request for Comments" Series: A Set of
Working Papers on Host Protocol.

The Network Resource Notebook, NIC 6740.

The BBN Terminal Interface Message Processor (Hardware Manual), BBN
Report No.  2184.

Specifications for the Interconnection of Terminals and the Terminal
IMP, BBN Report 2277.

ARPA Network Current Network Protocols, NIC 7104.

The Terminal IMP for the ARPA Computer Network, Ornstein et al,
Proceedings AFIPS 1972 Spring Joint Computer Conference.

Terminal Access to the ARPA Network: Experience and Inprovements,
Mimno et al, COMPCON 73, Proceedings Seventh Annual IEEE Computer
Society International Conference, San Francisco, February 27 - March
1, 1973.

TIP Users Group Notes, a series of informal notes designed to increase
communication among the developers of the TIP, TIP users, and Hosts
frequently used from TIPs.  To be put on the distribution list for
these notes, apply to the NIC Station Agent.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


APPENDIX D:  TERMINALS USED WITH THE TIP


     The following terminals are reputed to have worked with the TIP.
See the Introduction (Section 1).

      A. B. DICK VIDEOJET 9600 LINE PRINTER (2400 bps)
      ANDERSON-JACOBSON (models 630 and 841)
      ARDS
      KSR-35 Teletype
      CALCOMP 565
      CDI 1030/ "MULTICS" Terminal
      DATA 100 (model 73)
      DATAPOINT (models 2200, 3000, and 3300)
      DELTA TELTERM 2
      DIGITAL EQUIPMENT CORP. (models VT05 and GT40A)
      EDT 1200
      HAZELTINE 2000
      LINEOLEX (model A)
      MEMOREX 1240
      SUGARMAN (model S-4300)
      TECTRAN CASSETTE
      TEKTRONICS (models 4010 and 4013)
      TELETERM (model 1030)
      TELETYPE (MODEL 38)
      TERMINET 300
      TI Silent 700
      TYCOM
      TRENDATA (model 1000)
      UNIVAC DCT 500
      VIDEO SYSTEMS (models 1200 and 5000)

     We would be pleased to hear of any other terminals that have
operated on a TIP.

     At the International Conference on Computer Communications held
in Washington, D.C., in October 1972, we had the opportunity to
personally test a number of the above terminals with the TIP.  As a
result of this experience we now hold opinions as to the methods and
difficulty of connecting a number of these terminals to the TIP.  We
suggest you call the Network Control Center to be put in touch with
someone about this subject.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


APPENDIX E:  NEW TELNET PROTOCOL IMPLEMENTATION


     The NEW TELNET protocol  has  been  implemented  in  TIP  systems
numbered  greater  than 350.  Wherever possible, the TIP should appear
just the same to the  user,  but  some  differences  do  occur.   Some
background information is perhaps useful.  Both protocols are based on
the concept of the NETWORK VIRTUAL TERMINAL, as described  in  Section
2;  each also defines TELNET commands that may be sent to instruct the
other side, for instance, concerning echo mode.  In  the  OLD  TELNET,
such  commands  are unequivocal demands, and cannot be refused even if
the state is undesirable.  A Host can of course undo the state with  a
counter  command  of  its  own,  but it first must understand what has
happened; in addition, there is no guarantee that  the  same  sequence
won't  occur again.  The NEW TELNET protocol defines a minimal default
set of parameters, then allows each side to negotiate for non-standard
options.  No Host is required to accept an undesirable state; in fact,
a Host can simply refuse to do "whatever the other side requested" and
need  not  even  understand  what  it has just refused.  This protocol
should allow sophisticated Hosts to  define  complex  options  without
burdening simpler Hosts.

     A direct implication to the TIP user is that a "command" is now a
"request"  and  may  be refused.  It is possible, for instance, to ask
for remote echoing (local echo is the default) and  not  get  it.   In
practice,  systems  provide the same, or increased, capabilities under
the new protocol.

     On the positive side, the TIP now acts as  an  advocate  for  the
remote  terminal  user.  In the case of a halfduplex terminal like the
2741, the TIP can refuse to accept the remote echo option and the user
no longer needs to cope with double echoing when the connection opens.

     The  NEW  TELNET  protocol  specifically  affects  the  following
aspects of the TIP.



A.  Getting In and Out of NEW TELNET Mode

     The commands @OLD TELNET and @NEW TELNET set the  TIP  to  expect
OLD or NEW TELNET respectively.  The default as of this writing is OLD
TELNET, and @RESET automatically returns the device to OLD TELNET  for
all  devices.   This action also occurs when a non-permanent, that is,
hunting terminal, hunts to its correct rate.

     The TIP saves this mode state for each device.  When a command is
given,  for  say echo or binary, the TIP determines which protocol the
device is using and responds appropriately.

Report No. 2183                           Bolt Beranek and Newman Inc.
March 1976 Revision


B.  Echoing

     The TIP echo commands have the same meaning in NEW TELNET  as  in
OLD  TELNET, as revised above.  In addition, the TIP now remembers the
mode that the user desires, even though it may not be possible  to  be
in  that state at the time.  If the command is given when a connection
is open, the effect is the same as OLD TELNET, with  the  TIP  sending
the  request  to  the  remote Host.  If, however, the command is given
while the connection is closed, the TIP will save the  user's  request
and  send  it to the remote Host automatically, each time a connection
opens.

     Non-hunting terminals will  continue  to  be  pre-initialized  as
arranged by the designated site representative and the Network Control
Center.  Most hunting terminals will  default  to  remote  echo  mode;
however,  physical halfduplex terminals (2741s) will not accept remote
echoing ever, whether hunting or not.


 C.   Binary Input and Output Options


     Binary input and/or binary output are  available  under  the  NEW
TELNET protocol.  The commands are:

        @ BINARY INPUT START      begins binary input mode
        @ BINARY INPUT END        ends binary input mode
        @ BINARY OUTPUT START     begins binary output mode
        @ BINARY OUTPUT END       ends binary output mode


     As with the echo option, the TIP sets an internal  flag  for  the
mode  the  user  wishes, and attempts to get the remote Host to agree.
This feature is not yet automatic: the TIP will  not  send  a  request
unless  the connection is open at the time of the command, but the TIP
will passively accept a request for binary mode  from  a  remote  Host
until  the  user  ends binary mode.  This may be useful for paper tape
punches, for example.

D.    Log or Open a Connection

     The @ OPEN and @ LOG commands will  automatically  determine  the
appropiate  socket  for the ICP and the TIP will interpret the correct
TELNET protocol.



     NOTE: when connections are made directly (and not through the LOG
or  OPEN  commands),  the  user  should  take care to be in the proper
TELNET mode.  An example might be a lineprinter or  paper  tape  punch
set  wild.   Any  program connecting to such devices must use the same
TELNET protocol that the device is set to.